package com.example.lt.service;

import com.example.lt.entity.Captcha;
import com.example.lt.entity.dto.FindPWDTO;
import com.example.lt.entity.dto.LoginDTO;
import com.example.lt.entity.dto.RegisterDTO;
import com.example.lt.entity.user.User;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

/**
 * @Author 小涛Tao
 * @Date: 2024/07/27/17:00
 * version 1.0 注释：
 **/
public interface LoginService {

    /**
     * 注册用户
     * @param registerDTO
     * @return
     */
    Boolean register(RegisterDTO registerDTO);

    /**
     * 用户登录
     * @param loginDTO
     * @return
     */
    User login(LoginDTO loginDTO);

    /**
     * 找回密码
     * @param findPWDTO
     * @return
     */
    Boolean findPassword(FindPWDTO findPWDTO);

    /**
     * 获取图形验证码
     * @param response
     * @param uuid
     */
    void Captcha(HttpServletResponse response, String uuid) throws IOException;

    /**
     * 用户获取邮箱验证码
     * @param captcha
     * @return
     */
    Boolean getCode(Captcha captcha);

    /**
     * 检查邮箱验证码
     * @param email
     * @param code
     * @return
     */
    Boolean checkCode(String email, String code);

}
